// ChatSessionService.java
package com.ruoyi.chatAi.service;

import com.ruoyi.chatAi.domain.ChatSession;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

import java.util.List;

/**
 * 聊天会话服务接口
 *
 * @author ruoyi
 */
public interface ChatSessionService {

    /**
     * 查询用户的聊天会话列表
     */
    List<ChatSession> selectChatSessionsByUserId(Long userId);

    /**
     * 新增聊天会话
     */
    String insertChatSession(ChatSession chatSession);

    /**
     * 修改聊天会话
     */
    int updateChatSession(ChatSession chatSession);

    /**
     * 批量删除聊天会话
     */
    int deleteChatSessionByIds(String[] sessionIds);

    /**
     * 删除聊天会话信息
     */
    int deleteChatSessionById(String sessionId);



    /**
     * 生成AI回复（新会话）
     */
    SseEmitter generate(ChatSession chatSession);

    /**
     * 生成AI回复（指定会话）
     */


    SseEmitter generateWithSession(ChatSession chatSession);


    /**
     * 生成会话标题
     */
    String generateSessionTitle(String message);
}